<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>dphy: Main Page</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="HTML_custom.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="xlogo_bg.gif"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">dphy
   </div>
   <div id="projectbrief">Xilinx SDK Drivers API Documentation</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('index.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="headertitle">
<div class="title">dphy Documentation</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>This file contains the implementation of the MIPI DPHY Controller driver.User documentation for the driver functions is contained in this file in the form of comment blocks at the front of each function.</p>
<p><b>MIPI DPHY Overview</b></p>
<p>The DPHY currently supports the MIPI?Alliance Specification for DPHY Version 1.1.</p>
<p>It is capable of synchronous transfer at high speed mode at 80-1500 Mbps It has one clock lane and up to 4 data lanes. These lanes are unidirectional. It can do asynchronous transfer at upto 10 Mbps in low power mode. The clock lane can be in low power mode or high speed mode whereas the data lanes can be in Low power, High power or Escape mode.</p>
<p>The programmable parameters like IDelay, Wakeup, HS Timeout, Esc Timeout are present and various status like Stop state, Error detected, ULPS state,etc are available through the status register</p>
<p><b>Core Features</b></p>
<p>The GUI in IPI allows for the following configurations</p><ul>
<li>Lanes ( 1 to 4 )</li>
<li>Line Rate (80 - 1500 Mbps)</li>
<li>Data Flow direction (Tx or Rx)</li>
<li>Escape Clock (10 - 20 Mhz)</li>
<li>LPX period (50 - 100 ns)</li>
<li>Enable register interface</li>
<li>HS Timeout in Bytes (1000 - 65541)</li>
<li>Escape Timeout in ns (800 - 25600)</li>
</ul>
<p><b>Software Initialization &amp; Configuration</b></p>
<p>By default, the DPHY core is initialized and ready.</p>
<p>The application needs to do following steps in order for preparing the MIPI DPHY core to be ready.</p>
<ul>
<li>Call XDphy_LookupConfig using a device ID to find the core configuration.</li>
<li>Call XDphy_CfgInitialize to initialize the device and the driver instance associated with it.</li>
<li>Individual parameters can be configured by sending values with appropriate handles.</li>
</ul>
<p><b>Interrupts</b></p>
<p>There are no interrupts from the DPHY.</p>
<p><b> Virtual Memory </b></p>
<p>This driver supports Virtual Memory. The RTOS is responsible for calculating the correct device base address in Virtual Memory space.</p>
<p><b> Threads </b></p>
<p>This driver is not thread safe. Any needs for threads or thread mutual exclusion must be satisfied by the layer above this driver.</p>
<p><b>Asserts</b></p>
<p>Asserts are used within all Xilinx drivers to enforce constraints on argument values. Asserts can be turned off on a system-wide basis by defining, at compile time, the NDEBUG identifier. By default, asserts are turned on and it is recommended that application developers leave asserts on during development.</p>
<p><b>Building the driver</b></p>
<p>The DPHY driver is composed of source files and doesn't depend on any other drivers.</p>
<pre>
MODIFICATION HISTORY:</pre><pre>Ver Who Date     Changes
<hr/>

1.0 vsa 07/08/15 Initial release
1.1 sss 08/17/16 Added 64 bit support
    ms  01/23/17 Modified xil_printf statement in main function for all
                 examples to ensure that "Successfully ran" and "Failed"
                 strings are available in all examples. This is a fix
                 for CR-965028.
1.2 vsa 03/02/17 Add support for HS_SETTLE register
    ms  03/17/17 Added readme.txt file in examples folder for doxygen
                 generation.
</pre> </div></div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Copyright &copy; 2015 Xilinx Inc. All rights reserved.</li>
  </ul>
</div>
</body>
</html>
